<?php
/**
 * 애드페이 (AD-Pay for Gnuboard4)
 *
 * Copyright (c) 2010 Choi Jae-Young <www.miwit.com>
 *
 * 저작권 안내
 * - 저작권자는 이 프로그램을 사용하므로서 발생하는 모든 문제에 대하여 책임을 지지 않습니다. 
 * - 이 프로그램을 어떠한 형태로든 재배포 및 공개하는 것을 허락하지 않습니다.
 * - 이 저작권 표시사항을 저작권자를 제외한 그 누구도 수정할 수 없습니다.
 */

include_once("_common.php");
include_once("_config.php");
include_once("_lib.php");

$or_site = strip_tags($or_site);
$or_info = strip_tags($or_info);
$or_url = strip_tags($or_url);

if (!trim($pr_id)) alert("상품을 선택해주세요.");
if (!trim($or_site)) alert("사이트 이름을 입력해주세요.");
if (!trim($or_info)) alert("사이트 정보를 입력해주세요.");
if (!trim($or_url)) alert("사이트 주소를 입력해주세요.");

$product = sql_fetch("select * from $pb[product_table] where pr_id = '$pr_id'");
if (!$product)
    alert("상품이 존재하지 않습니다.");

if ($pb[cf_payment_type] == 'cash' && $product[pr_cash] > $mw_cash[mb_cash])
    alert("보유하신 $mw_cash[cf_cash_name] 부족합니다. 충전 후 이용해주세요.");

if ($pb[cf_payment_type] == 'point' && $product[pr_point] > $member[mb_point])
    alert("보유하신 포인트가 부족합니다.");

$tmp_sdate = mw_pay_banner_period($pr_id);
$tmp_edate = date("Y-m-d", strtotime("+".($product[pr_period]-1)." day", strtotime("$or_sdate 00:00:00")));

if ($or_sdate != $tmp_sdate || $or_edate != $tmp_edate)
    alert("시작일 또는 종료일이 맞지 않습니다.\\n\\n다른분이 먼저 선점하신 것 같습니다.\\n\\n죄송합니다. 다시 시도해주세요.");

$path = $pb[banner_path];

@mkdir($path, 0707);
@chmod($path, 0707);

$indexfile = $path."/index.php";
$f = @fopen($indexfile, "w");
@fwrite($f, "");
@fclose($f);
@chmod($indexfile, 0606);

$file_source = "";
$file_name = "";
$size = array();

$file = $_FILES[or_file];
$size = @getImageSize($file[tmp_name]);
$mime = array('image/png', 'image/jpeg', 'image/gif', 'application/x-shockwave-flash');

if (is_uploaded_file($file[tmp_name]))
{
    if (!in_array($size['mime'], $mime))
        alert("PNG, GIF, JPG, SWF 형식의 이미지 파일만 업로드 가능합니다.");

    if (!preg_match("/\.(jpg|png|gif|swf)$/i", $file[name]))
        alert("PNG, GIF, JPG, SWF 형식의 이미지 파일만 업로드 가능합니다.");

    if (!is_dir($path))
        alert("$path 디렉토리가 존재하지 않습니다.");

    if (!is_writable($path))
        alert("$path 디렉토리의 퍼미션을 707로 변경해주세요.");

    $file_name = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr(md5(uniqid($g4[server_time])),0,8).
                    '_'.str_replace('%', '', urlencode($file[name]));

    $dest_file = $path . '/' . $file_name;
    $count = 0;

    move_uploaded_file($file[tmp_name], $dest_file);
    chmod($dest_file, 0606);
}
else if ($product[pr_type] == "i") alert("배너파일을 업로드해주세요.");

$or_url = set_http($or_url);
$or_file = $file_name;

if ($pb[cf_payment_type] == 'cash')
    $or_cash = $product[pr_cash];
else
    $or_cash = 0;

if ($pb[cf_payment_type] == 'point')
    $or_point = $product[pr_point];
else
    $or_point = 0;

$sql_common = " pr_id = '$pr_id' ";
$sql_common.= ", mb_id = '$member[mb_id]' ";
$sql_common.= ", or_site = '$or_site' ";
$sql_common.= ", or_info = '$or_info' ";
$sql_common.= ", or_url = '$or_url' ";
$sql_common.= ", or_file = '$or_file' ";
$sql_common.= ", or_sdate = '$or_sdate' ";
$sql_common.= ", or_edate = '$or_edate' ";
$sql_common.= ", or_cash = '$or_cash' ";
$sql_common.= ", or_point = '$or_point' ";
$sql_common.= ", or_datetime = '$g4[time_ymdhis]' ";

if ($pb[cf_auto_app])
    $sql_common.= ", or_app = '1' ";

$sql = "insert into $pb[order_table] set $sql_common";
$qry = sql_query($sql);

$or_id = mysql_insert_id();

if ($pb[cf_payment_type] == 'cash' && $or_cash > 0)
    mw_buy_contents2($member[mb_id], $or_cash, "$pb[cf_name] - $product[pr_name]", $pb[order_table], $or_id);
else if ($pb[cf_payment_type] == 'point' && $or_point > 0)
    insert_point($member[mb_id], $or_point * -1, "$pb[cf_name] - $product[pr_name]", $pb[order_table], $or_id, 'adpay');

if ($member[mb_id] != $config[cf_admin])
{
    $mb = sql_fetch("select mb_nick from $g4[member_table] where mb_id = '$member[mb_id]'");
    $mb_nick = $mb[mb_nick];

    $me_memo = "{$mb_nick}님께서 광고를 등록하셨습니다.\n\n
    주소 : {$g4[url]}/plugin/ad-pay/reg_form.php\n";

    $tmp_row = sql_fetch(" select max(me_id) as max_me_id from $g4[memo_table] ");
    $me_id = $tmp_row[max_me_id] + 1;

    // 쪽지 INSERT
    $sql = " insert into $g4[memo_table]
                    ( me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_memo )
             values ( '$me_id', '{$config[cf_admin]}', '$member[mb_id]', '$g4[time_ymdhis]', '$me_memo' ) ";
    sql_query($sql);

    // 실시간 쪽지 알림 기능
    $sql = " update $g4[member_table]
                set mb_memo_call = '$member[mb_id]'
              where mb_id = '$config[cf_admin]' ";
    sql_query($sql);
}

alert("등록해주셔서 감사합니다.", "order.php");

